package com.atguigu.java;

public class ArrayUtil {

		//求数组的最大值
		public int getMax(int[] arr){
			int max = arr[0];
			for(int i = 1 ; i <arr.length ; i++){
				if(max<arr[i]){
					max = arr[i];
				}
			}
			return max;
		}
		
		//求数组的最小值
		public int getMin(int[] arr){
			int min = arr[0];
			for(int i = 1 ; i <=arr.length ; i++){
				if(min>arr[i]){
					min = arr[i];
				}
			}
			return min;
		}
		
	    //求数组的总和
		public int getSum(int[] arr){
			int sum = arr[0];
			for(int i = 1 ; i <=arr.length ; i++){
				sum += arr[i];
			}
			return sum;
		}
		
		//求数组的平均值
		public int getAvg(int[] arr){
			return getSum(arr)/arr.length;
		}
		
		//反转数组
		public void reverse(int[] arr){
			//int[] b = new int[arr.length-1];
			//for(int i = 0; i < arr.length; i++){
			//		b[arr.length- 1 - i] = arr[i];
			//}
			//arr = b;
			
			for(int i = 0, j = arr.length -1; i < j; i++,j--){
					int temp = arr[i];
					arr[i] = arr[j];
					arr[j] = temp;
			}
		}
		
		//复制数组
		public int[] copy(int[] arr){
				int[] b = new int[arr.length];
				for(int i = 0; i < arr.length; i++){
						b[i] = arr[i];
				}				
				return b;	
		}
		
		//数组排序
		public void sort(int[] arr){
			//冒泡排序
			int b;
			
			for(int i = 0 ; i< arr.length-1; i++){
					for(int j = 1; j < arr.length-i; j++){
						if(arr[j] < arr[j-1]){
							b = arr[j-1];
						   arr[j-1] = arr[j];
						   arr[j] = b;
						}
					}
			}
		}

		//遍历数组
		public void print(int[] arr){
				for(int i = 0 ; i < arr.length; i++){
						System.out.println(arr[i]);
				}
		}
	
		//查找指定元素
		public int getIndex(int[] arr, int dest){
				for(int i = 0; i < arr.length; i++){
						
						if(dest == arr[i]){
								return i;
						}
				}
				
				return -1;//返回一个负数，表示没有找到
		}
}
